using ELearningSystem.DAO.DAO;
using ELearningSystem.Gateway.Entities;

namespace ELearningSystem.Core.Interface
{
    public interface IUserManager
    {
        bool IsAuthenticatedUser(LearnerDAO aLearner, out LearnerDAO authenticatedLearner);
        bool IsAdmin(LearnerDAO aLearner);
        LearnerDAO GetLearnerWithName(string name);
        ScoreViewDAO GetUpdatedScore(LearnerDAO aLearner);
        ScoreViewDAO UpdateScoreAndReturnLatestScore(LearnerDAO learner, AttemptDAO attempt);
        bool SaveOrUpdateLearner(LearnerDAO learner, out string message);
        LearnerDAO GetLearnerWithEmail(string emailAddress);
    }
}